Method and apparatus for decoding video bitstream, method and apparatus for generating video bitstream, storage medium, and electronic device

ABSTRACT

A method and apparatus for decoding a video bitstream, a method and apparatus for generating a video bitstream, storage medium and an electronic device are provided. The method for decoding the video bitstream includes that: a first parameter of a reference position of a slice in a video picture is acquired; a second parameter of the slice is acquired, the second parameter being used for determining a starting position of the slice in the video picture; and a starting position coordinate parameter of the slice in the video picture is calculated according to the first parameter and the second parameter.

TECHNICAL FIELD

The present disclosure relates to the field of communication, andparticularly to a method and apparatus for decoding a video bitstream, amethod and apparatus for generating a video bitstream, a storage mediumand an electronic device.

BACKGROUND

In a related art, during streaming of media by a streaming mediaapplication, one or more bitstreams with different resolutions may beextracted from a video bitstream with high-resolution pictures so thatthe video bitstream can adapt to terminal devices with differentdecoding capabilities and multiple different application scenarios, forexample, an interactive ultra-high-definition television and dynamicinteractive video on demand. For an application using a panoramic videoor a 360-degree video, a server may dynamically send, according to aviewing requirement of the user provided by a terminal, a sub bitstreamincluding content specified to be viewed by a user and extracted from acomplete bitstream to the user of the terminal. The server may extractthe corresponding sub bitstream from the complete bitstream in real timeaccording to the viewing requirement of the user provided by theterminal, and the server may also extract sub bitstreams from thecomplete bitstream in advance and dynamically select and send thecorresponding sub bitstream according to the viewing requirement of theuser provided by the terminal.

In the related art, a slice is one of the basic data units fororganization of a bitstream in a mainstream video coding standard (forexample, the Advanced Video Coding H.264/AVC standard and the HighEfficiency Video Coding H.265/HEVC standard). In a coding process, acoder partitions a picture into one or more slices and codes the slices.A slice may correspond to a unit that may be independently decoded inthe picture, and a decoding process of the slice may be independent ofdata of another slice in the same picture. By use of such acharacteristic of the slice, a bitstream convenient for bitstreamextraction may be generated, for example, a slice group using theH.264/AVC standard and a tile using the H.265/HEVC standard. TheH.265/HEVC standard allows inclusion of one or more slices in a tile,and in such case, a tile may be used as a slice group (or a slice set).The H.265/HEVC standard also allows inclusion of one or more tiles in aslice, and in such case, a slice may be used as a tile group (or a tileset).

In the related art, in a decoding process of a slice, starting positioninformation of the slice is required to be coded. Then, after data ofthe slice is decoded, a decoder may store a restored value of a pixelsampling value in the slice at a correct position of a restored picturebuffer. In an existing mainstream video coding standard, a serial number(according to a raster scanning sequence) of a first coding block of aslice in a picture is used as position information of the slice in thepicture. For example, in the H.264/AVC standard, a serial number of afirst Macroblock (MB) of a slice in a picture is used as a positioncoordinate of the slice (a corresponding syntax unit isfirst_mb_in_slice). In the H.265/HEVC standard, whether a slice is afirst slice in a picture or not is represented with a first flag bit (acorresponding syntax unit is first_slice_segment_in_pic_flag), and whenthe slice is not the first slice in the picture, a serial number of afirst Coding Tree Block (CTB) in the slice in the picture is used as aposition coordinate of the slice (a corresponding syntax unit isslice_segment_address).

Coding a video picture and performing sub bitstream extraction on abitstream are two common bitstream generation processes. In a process ofcoding a video picture, a coder determines a position coordinate of eachslice in the picture according to a picture resolution, a size of acoding block (a size of an MB is fixedly 16×16, and a size of a CTB isconfigurable) and a manner of dividing the picture into the slices. In abitstream extraction process, a processing apparatus is required toparse a related syntax unit in a bitstream to be extracted, determinepicture resolutions of the bitstream to be extracted and a subbitstream, a size of a coding block and a manner of dividing a pictureinto slices, determine a position of a picture region corresponding tothe sub bitstream in a picture corresponding to the bitstream to beextracted so as to calculate a position coordinate of each slice formingthe picture region corresponding to the sub bitstream in the picturecorresponding to the sub bitstream, and finally overwrites a value of asyntax unit corresponding to the position coordinate of the subbitstream in slice header information of the extracted sub bitstream.Herein, the picture corresponding to the bitstream to be extractedrefers to a video picture obtained by decoding the bitstream to beextracted, and the picture corresponding to the sub bitstream refers toa video picture obtained by decoding the sub bitstream. Under normalconditions, the picture corresponding to the sub bitstream is a pictureregion in the picture corresponding to the bitstream to be extracted.Particularly, for a panoramic video or a 360-degree video, the picturecorresponding to the sub bitstream may also be formed by two or morenonadjacent regions in the picture corresponding to the bitstream to beextracted. Particularly, for the panoramic video or the 360-degreevideo, according to a raster scanning sequence, a sequence of the two ormore nonadjacent regions in the picture corresponding to the bitstreamto be extracted may be different from a sequence of the two or morenonadjacent regions in the picture corresponding to the sub bitstream.

Coding of starting position coordinate information of a slice in apicture can increase the calculation complexity of a process ofdetermining a starting position coordinate of the slice in a subbitstream, and also increase the complexity of the process ofoverwriting the starting position coordinate of the slice in a subbitstream extraction process. During a practical application, theseshortcomings of the methods in the related art increase theimplementation complexity of an apparatus for processing a bitstream andreduce the bitstream processing efficiency.

SUMMARY

Embodiments of the present disclosure provide a method and apparatus fordecoding a video bitstream, a method and apparatus for generating avideo bitstream, storage medium and an electronic device.

According to an embodiment of the present disclosure, a method fordecoding a video bitstream is provided, which may include: a firstparameter of a reference position of a slice in a video picture isacquired; a second parameter of the slice is acquired, the secondparameter being used for determining a starting position of the slice inthe video picture; and a starting position coordinate parameter of theslice in the video picture is calculated according to the firstparameter and the second parameter.

According to an embodiment of the present disclosure, a method forgenerating a video bitstream is provided, which may include: a firstparameter is set according to a starting position of a first slice in avideo picture; and the first parameter is written into a bitstream of apicture-layer data unit of the video picture.

According to another embodiment of the present disclosure, an apparatusfor decoding a video bitstream is provided, which may include: a firstacquisition module, configured to acquire a first parameter of areference position of a slice in a video picture; a second acquisitionmodule, configured to acquire a second parameter of the slice, thesecond parameter being used for determining a starting position of theslice in the video picture; and a calculation module, configured tocalculate a starting position coordinate parameter of the slice in thevideo picture according to the first parameter and the second parameter.

According to another embodiment of the present disclosure, an apparatusfor generating a video bitstream is provided, which may include: asetting module, configured to set a first parameter according to astarting position of a first slice in a video picture; and a generationmodule, configured to write the first parameter into a bitstream of apicture-layer data unit of the video picture.

According another embodiment of the present disclosure, a storage mediumis also provided, in which a computer program may be stored, thecomputer program being configured to execute, when running, theoperations in any abovementioned method embodiment.

According to another embodiment of the present disclosure, an electronicdevice is also provided, which may include a memory and a processor. Acomputer program may be stored in the memory. The processor may beconfigured to run the computer program to execute the operations in anyabovementioned method embodiment.

Through the solution in the embodiments of the present disclosure,operations of recalculating a starting position of a slice in a picturein a sub bitstream obtained by extraction in a bitstream extractionprocess and overwriting starting position information of the slice inslice header information may be avoided, the technical problem in therelated art that an apparatus for processing a bitstream has an overcomplex decoding process is solved, and the processing efficiency of theapparatus for processing the bitstream is improved.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings described here are adopted to provide a deeperunderstanding to the present disclosure and form a part of the presentapplication. Schematic embodiments of the present disclosure anddescriptions thereof are adopted to explain the present disclosure andnot intended to form improper limits to the present disclosure. In thedrawings:

FIG. 1 is a flowchart of a method for decoding a video bitstreamaccording to an embodiment of the present disclosure;

FIG. 2 is a flowchart of a method for generating a video bitstreamaccording to an embodiment of the present disclosure;

FIG. 3 is a structure block diagram of an apparatus for decoding a videobitstream according to an embodiment of the present disclosure;

FIG. 4 is a structure block diagram of an apparatus for generating avideo bitstream according to an embodiment of the present disclosure;

FIG. 5 is a schematic diagram of a decoding method according to animplementation mode;

FIG. 6 is a schematic diagram of a bitstream generation method accordingto an implementation mode;

FIG. 7 is a schematic diagram of a method for coding a video picture togenerate a bitstream according to an implementation mode;

FIG. 8 is a schematic diagram of a method for extracting a videobitstream to generate a bitstream according to an implementation mode;

FIG. 9 is an example diagram of a bitstream extraction implementationprocess according to an implementation mode; and

FIG. 10 is a schematic diagram showing the application of the solutionof the embodiments in a 360-degree panoramic video.

DETAILED DESCRIPTION OF THE EMBODIMENTS

The present disclosure will be described below with reference to thedrawings and in combination with the embodiments in detail. It is to benoted that the embodiments in the present application andcharacteristics in the embodiments may be combined without conflicts.

It is to be noted that the terms like “first” and “second” in thespecification, claims and accompanying drawings of the presentdisclosure are used for differentiating the similar objects, but do nothave to describe a specific order or a sequence.

Embodiment 1

The embodiment provides a method for decoding a video bitstream. FIG. 1is a flowchart of a method for decoding a video bitstream according toan embodiment of the present disclosure. As shown in FIG. 1, the flowincludes the following operations.

In S102, a first parameter of a reference position of a slice in apicture is acquired.

In S104, a second parameter of the slice is acquired, the secondparameter being used for determining a starting position of the slice inthe video picture.

In S106, a starting position coordinate parameter of the slice in thevideo picture is calculated according to the first parameter and thesecond parameter.

Through the operations, operations of recalculating a starting positionof a slice in a picture in a sub bitstream obtained by extraction in abitstream extraction process and overwriting starting positioninformation of the slice in slice header information may be avoided, thetechnical problem in the related art that an apparatus for processing abitstream has an over complex decoding process is solved, and theprocessing efficiency of the apparatus for processing the bitstream isimproved.

In at least one exemplary embodiment, an executer of the operations mayinclude, but is not limited to, an apparatus for processing a videobitstream such as a related apparatus for generating a bitstream, and areceiving and playing apparatus in a video communication application,for example, a mobile phone, a computer, a server, a set-top box, aportable mobile terminal, a digital camera, a television broadcastsystem device, a content delivery network device and a media server.

In at least one exemplary embodiment, the operation that the firstparameter of the reference position of the slice in the video picture isacquired includes: one or more first bitstreams corresponding to apicture-layer data unit in the video bitstream are parsed; and the firstparameter is acquired from the one or more first bitstreams.

In an exemplary embodiment, multiple first bitstreams are obtained byparsing, and the operation that the first parameter is acquired from themultiple first bitstreams includes: the multiple first bitstreams areparsed to obtain multiple first parameters; identification informationrelated to the picture-layer data unit and/or a reference relationshipbetween multiple picture-layer data units are/is acquired; and one firstparameter among the multiple first parameters is determined according tothe identification information and/or the reference relationship. Thefinally determined first parameter may be complete and may also beobtained by combining the multiple first parameters.

In at least one exemplary embodiment, the identification informationrelated to the picture-layer data unit is used for indicating the firstparameter used in the process of calculating the starting positioncoordinate parameter of the slice in the video picture.

In at least one exemplary embodiment, the picture-layer data unitincludes at least one of the following data units: a Video Parameter Set(VPS), a Sequence Parameter Set (SPS), a Picture Parameter Set (PPS), asequence header, a picture header, a slice header and a picture-layerauxiliary information unit.

In at least one exemplary embodiment, the operation that the secondparameter of the slice is acquired includes that: slice-layer headerinformation of the video bitstream is parsed; and the second parameteris acquired from the slice-layer header information.

In the embodiment, the first parameter includes coordinate informationof the video picture and stride information of the video picture, andthe second parameter includes coordinate information of the slice.

In an exemplary embodiment, the operation that the starting positioncoordinate parameter of the slice in the video picture is calculatedaccording to the first parameter and the second parameter includes thestarting position coordinate parameter (SliceAddrX, SliceAddrY) beingcalculated according to the following formulae:

SliceAddrX(slice_address_x−pic_slice_address_info_x0+pic_slice_address_info_stride_width)% pic_slice_address_info_stride_width, and

SliceAddrY(slice_address_y−pic_slice_address_info_y0+pic_slice_address_info_stride_height)% pic_slice_address_info_stride_height,

where SliceAddrX is a starting position coordinate of the slice in thevideo picture in a horizontal direction, SliceAddrY is a startingposition coordinate of the slice in the video picture in a verticaldirection, slice_address_x is a position coordinate of the slice in thehorizontal direction, slice_address_y is a position coordinate of theslice in the vertical direction, pic_slice_address_info_x0 is acoordinate of the reference position of the slice in the video picturein the horizontal direction, pic_slice_address_info_y0 is a coordinateof the reference position of the slice in the video picture in thevertical direction, pic_slice_address_info_stride_width is a stridevalue of the video picture in the horizontal direction, andpic_slice_address_info_stride_height is a stride value of the videopicture in the vertical direction. The arithmetic operator “%” as usedherein is defined in the H.265/HEVC standard as modulus, i.e., x % y isthe remainder of x divided by y, defined for integers x and y with x>=0and y>0.

In another exemplary embodiment, when the first parameter does notinclude pic_slice_address_info_stride_height, a calculation method forSliceAddressY may be changed, and in such case, the operation that thestarting position coordinate parameter of the slice in the video pictureis calculated according to the first parameter and the second parameterincludes

the starting position coordinate parameter (SliceAddrX, SliceAddrY)being calculated according to the following formulae:

SliceAddrX(slice_address_x−pic_slice_address_info_x0+pic_slice_address_info_stride_width)% pic_slice_address_info_stride_width, and

SliceAddrY=slice_address_y−pic_slice_address_info_y0,

where SliceAddrX is a starting position coordinate of the slice in thevideo picture in a horizontal direction, SliceAddrY is a startingposition coordinate of the slice in the video picture in a verticaldirection, slice_address_x is a position coordinate of the slice in thehorizontal direction, slice_address_y is a position coordinate of theslice in the vertical direction, pic_slice_address_info_x0 is acoordinate of the reference position of the slice in the video picturein the horizontal direction, pic_slice_address_info_y0 is a coordinateof the reference position of the slice in the video picture in thevertical direction, and pic_slice_address_info_stride_width is a stridevalue of the video picture in the horizontal direction.

The embodiment provides a method for generating a video bitstream. FIG.2 is a flowchart of a method for generating a video bitstream accordingto an embodiment of the present disclosure. As shown in FIG. 2, the flowincludes the following operations.

In S202, a first parameter is set according to a starting position of afirst slice in a video picture.

In S204, the first parameter is written into a bitstream of apicture-layer data unit of the video picture.

In at least one exemplary embodiment, after the operation that the firstparameter is written into the bitstream of the picture-layer data unitof the video picture, the method may further include that: a secondparameter is calculated according to a starting position coordinateparameter of a slice in the video picture and the first parameter, andthe second parameter is written into a bitstream corresponding toslice-layer header information, the second parameter being used fordetermining a starting position of the slice in the video picture.

In at least one exemplary embodiment, the operation that the firstparameter is set according to the starting position of the first slicein the video picture includes that: a picture region where a picturecorresponding to a sub bitstream is located in a picture correspondingto a bitstream to be extracted is determined, the picture correspondingto the sub bitstream being the video picture; and the starting positionof the first slice in the video picture is determined, and the firstparameter is calculated according to the starting position, the startingposition of the first slice being a starting position coordinate of thefirst slice in the video picture in the picture corresponding to thebitstream to be extracted.

Through the above descriptions about the implementation modes, thoseskilled in the art may clearly know that the methods according to theembodiment may be implemented in a manner of combining software and arequired universal hardware platform and, of course, may also beimplemented through hardware, but the former is an exemplaryimplementation mode under many circumstances. Based on such anunderstanding, the technical solutions of the present disclosuresubstantially or parts making contributions to a conventional art may beembodied in the form of a software product. The computer softwareproduct is stored in a storage medium (for example, a Read-Only Memory(ROM)/Random Access Memory (RAM), a magnetic disk and an optical disk),including a plurality of instructions configured to enable a terminaldevice (which may be a mobile phone, a computer, a server, a networkdevice or the like) to execute the method of each embodiment of thepresent disclosure.

Embodiment 2

The embodiment also provides an apparatus for decoding a video bitstreamand an apparatus for generating a video bitstream, which are configuredto implement the abovementioned embodiment and exemplary implementationmodes. What has been described will not be elaborated. For example, term“module” used below may be a combination of software and/or hardwarecapable of realizing a preset function. Although the apparatusesdescribed in the following embodiment may be implemented with software,implementation with hardware or a combination of the software and thehardware is also possible and conceivable.

FIG. 3 is a structure block diagram of an apparatus for decoding a videobitstream according to an embodiment of the present disclosure. As shownin FIG. 3, the apparatus includes:

a first acquisition module 30, configured to acquire a first parameterof a reference position of a slice in a picture;

a second acquisition module 32, configured to acquire a second parameterof the slice, the second parameter being used for determining a startingposition of the slice in the video picture; and

a calculation module 34, configured to calculate a starting positioncoordinate parameter of the slice in the video picture according to thefirst parameter and the second parameter.

FIG. 4 is a structure block diagram of an apparatus for generating avideo bitstream according to an embodiment of the present disclosure. Asshown in FIG. 4, the apparatus includes:

a setting module 40, configured to set a first parameter according to astarting position of a first slice in a video picture; and

a generation module 42, configured to write the first parameter into abitstream of a picture-layer data unit of the video picture.

It is to be noted that each module may be implemented through softwareor hardware and, under the latter condition, may be implemented in, butnot limited to, the following manner: the modules are all positioned inthe same processor, or the modules are positioned in differentprocessors in any combination form respectively.

Embodiment 3

The embodiment is an exemplary embodiment of the present application,and is adopted to explain and describe the solutions of the presentapplication in combination with exemplary implementation modes indetail.

In the following embodiment, a video that a video picture belongs to maybe a high-resolution video or a video of another style. Thehigh-resolution video refers to a picture sequence formed byhigh-resolution pictures, and the high-resolution pictures may be videopictures with a high resolution such as high-definition video pictures,ultra-high-definition video pictures, panoramic video pictures and360-degree video pictures. A bitstream refers to a bitstream generatedby coding a high-resolution video by a video coder and also refers to atransmission stream and/or media file obtained by system-layerprocessing over the bitstream generated by coding the high-resolutionvideo by the video coder and including the bitstream generated by codingthe high-resolution video by the video coder, and the bitstream may bedecoded to obtain the high-resolution video. System-layer processingrefers to an encapsulation operation over the video bitstream. Forexample, the video bitstream is encapsulated into the transmissionstream as a data load, or the video bitstream is encapsulated into themedia file as a load. System-layer processing also includesencapsulating the transmission stream or media file including the videobitstream into a stream for transmission or a file for storage as a dataload. A data unit generated by system-layer processing is also called asystem-layer data unit, and information (for example, header informationof the system-layer data unit) added into the system-layer data unit inthe process of encapsulating the data load by system-layer processing iscalled system-layer information. A sub bitstream refers to a partialbitstream obtained by an extraction operation over a bitstream, the subbitstream may be decoded to obtain a video picture, the video picturemay be a picture with a resolution lower than a high-resolution videopicture obtained by decoding the bitstream, and the video picture mayinclude part of the content in the high-resolution video picture.

The embodiment provides methods and apparatuses for decoding a videopicture bitstream and generating a bitstream, including a method andapparatus for decoding a bitstream and a method and apparatus forgenerating a bitstream. The method for decoding the bitstream includesthat: a bitstream corresponding to a picture-layer data unit is parsedto obtain a first parameter of a starting position of a first slice in apicture; slice-layer header information is parsed to obtain a secondparameter of a starting position of a slice in the picture; and astarting position coordinate parameter of the slice in the picture iscalculated according to the first parameter and the second parameter.The method for generating the bitstream includes: a first parameter isset according to a starting position coordinate parameter of a firstslice in a picture, and the first parameter is written into a bitstreamcorresponding to a picture-layer data unit. Therefore, operations ofrecalculating a starting position of a slice in a picture in a subbitstream obtained by extraction in a bitstream extraction process andoverwriting starting position information of the slice in slice headerinformation may be avoided, and the processing efficiency of anapparatus for processing a bitstream is improved.

The embodiment also includes the following implementation modes.

Implementation Mode 1

FIG. 5 is a schematic diagram of a decoding method according to theimplementation mode, as shown in FIG. 5, by use of a method of theimplementation mode, a bitstream is decoded mainly through the followingoperations.

In operation 201, a bitstream corresponding to a picture-layer data unitis parsed to obtain a first parameter of a starting position of a firstslice in a picture.

The picture-layer unit includes data used in a picture decoding process,and the data is used for decoding one or more slices in the picture. Thepicture-layer unit includes one or more of the following data units inthe video bitstream: a Network Abstraction Layer (NAL) unit header; aparameter set; a sequence header; a picture header; a slice header; andan auxiliary information unit of the video bitstream (for example,Supplemental Enhancement Information (SEI) and Video UsabilityInformation (VUI)).

The first parameter is used for indicating a reference coordinateposition of the picture. A method for arranging the first parameter inthe bitstream is shown in Table 1.

TABLE 1 Method for Arranging First Parameter in Bitstream Descriptor ...... pic_slice_address_info_present_flag u(1)if(slice_address_info_present_flag){ pic_slice_address_info_x0 ue(v)pic_slice_address_info_y0 ue(v) pic_slice_address_info_stride_widthue(v) pic_slice_address_info_stride_height ue(v) } ... ... }

Each syntax unit in Table 1 has the following semantics.

If a value of pic_slice_address_info_present_flag is 1, it representsthat a parameter used for determining an address of a slice in thepicture is contained in the bitstream. If the value ofpic_slice_address_info_present_flag is 0, it represents that theparameter used for determining the address of the slice in the pictureis not contained in the bitstream. If the value ofpic_slice_address_info_present_flag is 0, values ofpic_slice_address_info_x0 and pic_slice_address_info_y0 are 0, a valueof pic_slice_address_info_stride_width is equal to a width of thepicture, and a value of pic_slice_address_info_stride_height is equal toa height of the picture.

In the process of parsing the bitstream, the value ofpic_slice_address_info_present_flag is obtained by an entropy decodingmethod corresponding to u(1).

In the above, pic_slice_address_info_x0, pic_slice_address_info_y0,pic_slice_address_info_stride_width andpic_slice_address_info_stride_height are used for calculating theaddress of the slice in the picture.

Optionally, the first parameter may not includepic_slice_address_info_stride_height, i.e.,pic_slice_address_info_stride_height may not be contained in thebitstream.

In the process of parsing the bitstream, the values of the fourparameters are obtained by an entropy decoding method corresponding toue(v). It is to be noted that, in bitstream arrangement, descriptors ofthe four parameters may also use u(v). Under the condition that u(v) isused, bit numbers of the four parameters in the bitstream are asfollows: the bit numbers corresponding to pic_slice_address_info_x0 andpic_slice_address_info_stride_width are equal to Ceil(Log 2(PicWidth)),and the bit numbers corresponding to pic_slice_address_info_y0 andpic_slice_address_info_stride_height are equal to Ceil(Log2(PicHeight)). PicWidth is the width of the picture, and PicHeight isthe height of the picture. Mathematical functions Ceil(x) and Log 2(x)are the same as mathematical functions with the same names defined inthe H.265/HEVC standard.

It is to be noted that, in Table 1, a manner of settingpic_slice_address_info_x0 and pic_slice_address_info_y0 in the bitstreamrespectively is adopted. Under the condition that the width of thepicture and the height of the picture are known, sequential numbers ofpixels represented by pic_slice_address_info_x0 andpic_slice_address_info_y0 may also be adopted to represent in thepicture may also be adopted to represent the two parameters in thebitstream. The serial number of the pixel may be a serial number of ablock where the pixel is located in the picture. The undermentionedrepresentation method for second parameters slice_address_x andslice_address_y in the slice header information in the bitstream issimilar to this representation method for the first parameters.

It is to be noted that, in the implementation mode, counting units ofpic_slice_address_info_x0, pic_slice_address_info_y0,pic_slice_address_info_stride_width andpic_slice_address_info_stride_height in Table 1 are sample (samplepoint). Under the condition that a size of a block division unit in thepicture is known, the size of the block division unit may also be usedas the counting unit. The undermentioned representation method forsecond parameters slice_address_x and slice_address_y in the sliceheader information in the bitstream is similar. In the implementationmode of the patent, the adopted counting unit is sample (sample point).

The bitstream may exist in one or more picture-layer units. For example,in case of existence in multiple parameter sets, according to areference relationship between the parameter sets, a parameter in oneparameter set may cover a corresponding parameter in one or more otherparameter sets that the parameter set directly or indirectly refers to.The parameter in the slice header information may cover a correspondingparameter in one or more parameter sets that the slice directly orindirectly refers to. When one or some parameter sets are not in anydirect or indirect reference relationship with the other parameter sets,parameters in the other parameter sets may be covered by parameters inthe specified parameter sets according to a preset coverage manner, or aparameter to be adopted is determined according to one or both ofidentification information in the parameter set and identificationinformation in the slice header information. In addition, optionally,under the condition that the first parameter may be obtained from one ormore picture-layer units, the finally adopted first parameter mayfurther be determined in the decoding process according to a flag bit inthe bitstream or the identification information.

In operation 202, slice header information is parsed to obtain a secondparameter of a starting position of a slice in the picture.

The second parameter is used for indicating a coordinate position of theslice. A method for arranging the second parameter in the bitstream isshown in Table 2. A bitstream corresponding to the second parameter isin a bitstream corresponding to a slice header information unit.

TABLE 2 Method for Arranging Second Parameter in Bitstream Descriptor... ... slice_address_x ue(v) slice_address_y ue(v) ... ... }

Each syntax unit in Table 2 has the following semantics:

slice_address_x and slice_address_y are used for calculating an addressof the slice in the picture.

In the process of parsing the bitstream, the values of the twoparameters are obtained by the entropy decoding method corresponding toue(v). It is to be noted that, in bitstream organization, descriptors ofthe two parameters may also use u(v). Under the condition that u(v) isused, bit numbers of the two parameters in the bitstream are as follows:the bit number corresponding to slice_address_x is equal to Ceil(Log2(PicWidth)), and the bit number corresponding to slice_address_y isCeil(Log 2(PicHeight)). PicWidth is the width of the picture, andPicHeight is the height of the picture. The mathematical functionsCeil(x) and Log 2(x) are the same as the mathematical functions with thesame names defined in the H.265/HEVC standard.

In operation 203, a starting position coordinate parameter of the slicein the picture is calculated according to the first parameter and thesecond parameter.

Herein, under the condition that sample (sample point) is taken as thecounting units of the first parameter and the second parameter, acoordinate (SliceAddrX, SliceAddrY) of a left upper sample (i.e., afirst sample in the slice) of a first decoding block in the slice in thepicture is calculated by use of the following equations (Eqs.) 1 and 2:

SliceAddrX(slice_address_x−pic_slice_address_info_x0+pic_slice_address_info_stride_width)% pic_slice_address_info_stride_width  (Eq. 1), and

SliceAddrY(slice_address_y−pic_slice_address_info_y0+pic_slice_address_info_stride_height)% pic_slice_address_info_stride_height  (Eq. 2).

In at least one exemplary embodiment, when the first parameter does notinclude pic_slice_address_info_stride_height andpic_slice_address_info_stride_height is not contained in the bitstream,a calculation method for SliceAddrY is as follows in Eq. 3:

SliceAddrY=slice_address_y−pic_slice_address_info_y0  (Eq. 3).

Implementation Mode 2

FIG. 6 is a schematic diagram of a bitstream generation method accordingto the implementation mode, as shown in FIG. 6, by use of a method ofthe implementation mode, a bitstream is generated mainly through thefollowing operations.

In operation 301, a first parameter is set according to a startingposition coordinate parameter of a first slice in a picture.

In operation 302, the first parameter is written into a bitstreamcorresponding to a picture-layer data unit.

In the bitstream generation method of the implementation mode, thecorresponding parameter is written into the bitstream by use of thestructure for arranging the first parameter in the bitstream as shown inTable 1.

The bitstream generated by the bitstream generation method ofimplementation mode 2 may be decoded by the decoding method ofimplementation mode 1.

The bitstream generation method in the implementation mode may furtherbe subdivided into two conditions: a video picture is coded to generatea bitstream, and bitstream extraction is performed on an existingbitstream to generate a sub bitstream. Operations for bitstreamgeneration under the two conditions will be described in the followingimplementation modes respectively.

Implementation Mode 3

FIG. 7 is a schematic diagram of a method for coding a video picture togenerate a bitstream according to an implementation mode.

In the method of the implementation mode, the structure for arrangingthe first parameter in the bitstream as shown in Table 1 is used, andthe first parameter is coded in a parameter set. In the method of theimplementation mode, the structure for arranging the second parameter inthe bitstream as shown in Table 2 is used, and the second parameter iscoded in slice header information. A bitstream generated by thebitstream generation method of implementation mode 3 may be decoded bythe decoding method of implementation mode 1.

In operation 401, a first parameter is set according to a startingposition coordinate parameter of a first slice in a picture.

(pic_slice_address_info_x0, pic_slice_address_info_y0) is set as acoordinate of a left upper sample (sample point) of a first coding blockin the first slice in the picture in the picture. Under a normalcondition, the left upper sample (sample point) of the first codingblock in the first slice in the picture is a left upper sample (samplepoint) of the picture, and values of (pic_slice_address_info_x0,pic_slice_address_info_y0) may be set to be (0, 0).

A value of pic_slice_address_info_stride_width is set to be a value of awidth of the picture.

A value of pic_slice_address_info_stride_height is set to be a value ofa height of the picture.

In operation 402, the first parameter is written into a bitstreamcorresponding to a picture-layer data unit.

Optionally, for a value of pic_slice_address_info_present_flag, when thevalues of (pic_slice_address_info_x0, pic_slice_address_info_y0) are (0,0) and the values of pic_slice_address_info_stride_width andpic_slice_address_info_stride_height are equal to the width and heightof the picture respectively, namely values of four syntax elementsrelated to the first parameter are equal to default values when thevalue of pic_slice_address_info_present_flag is 0, the value ofpic_slice_address_info_present_flag may be set to be 0.

Optionally, for the value of pic_slice_address_info_present_flag, thevalue of pic_slice_address_info_present_flag may be set to be 1, and thevalues of the four syntax elements related to the first parameter arecoded in the bitstream.

The value of pic_slice_address_info_present_flag and the values (whenthe value of pic_slice_address_info_present_flag is 1) of the foursyntax elements related to the first parameter are written into one ormore data units in the bitstream by use of an entropy coding methodcorresponding to a descriptor of each syntax unit in Table 1.

Herein, the data unit in the bitstream may be one or more of a VPS, anSPS, a PPS and one or more other parameter sets (for example, anAdaptive Parameter Set (APS)) available for one or more slices in thepicture. When the first parameter is written into multiple parametersets, the bitstream generation method of the implementation mode isrequired to ensure that a correct first parameter can be obtained in adecoding process by use of the decoding method of implementation mode 1.The correct first parameter refers to a first parameter used by thebitstream generation method in a bitstream generation process.

In operation 403, a value of a second parameter is calculated accordingto the first parameter, and the second parameter is written into abitstream corresponding to slice header information.

A coordinate (SliceAddrX, SliceAddrY) of a left upper sample (samplepoint) of a first coding block of a slice in the picture is determined.

In the bitstream generation process, a value of slice_address_x is setto be a numerical value that can be calculated according to formula (1)in implementation mode 1 and is equal to a value of SliceAddrX. Forexample, when the values of (pic_slice_address_info_x0,pic_slice_address_info_y0) are (0, 0), the value of slice_address_x isset to be equal to the value of SliceAddrX.

In the bitstream generation process, a value of slice_address_y is setto be a numerical value that can be calculated according to formula (2)in implementation mode 1 and is equal to a value of SliceAddrY. Forexample, when the values of (pic_slice_address_info_x0,pic_slice_address_info_y0) are (0, 0), the value of slice_address_y isset to be equal to the value of SliceAddrY.

The values of the syntax elements slice_address_x and slice_address_yrelated to the second parameter are written into the bitstreamcorresponding to the slice header information by use of an entropycoding method corresponding to a descriptor of each syntax unit in Table2.

Implementation Mode 4

FIG. 8 is a schematic diagram of a method for extracting a videobitstream to generate a bitstream according to an implementation mode.

In the implementation mode, an input bitstream of a bitstream extractionprocess is called a “bitstream to be extracted” or an “originalbitstream”, and an output bitstream of the bitstream extraction processis called a “sub bitstream”. “A picture corresponding to the bitstreamto be extracted” (or “a picture corresponding to the originalbitstream”) refers to a restored picture obtained by decoding thebitstream to be extracted (or the original bitstream), and “a picturecorresponding to the sub bitstream” refers to a restored pictureobtained by decoding the sub bitstream. The “bitstream to be extracted”(or the “original bitstream” may be a bitstream obtained by coding avideo picture through the method of implementation mode 3 and may alsobe a sub bitstream obtained by performing bitstream extraction throughthe methods of implementation mode 4 and implementation mode 5.

In the method of the implementation mode, the structure for arrangingthe first parameter in the bitstream as shown in Table 1 is used, andthe first parameter is recoded (or called “overwritten”) in a parameterset of the sub bitstream in the extraction process. In the method of theimplementation mode, the structure for arranging the second parameter inthe bitstream as shown in Table 2 is used, and the second parameter inslice header information in the bitstream to be extracted is notrequired to be overwritten in the extraction process, so that thecomplexity of recalculating a starting position for a slice in the subbitstream and coding the starting position in the bitstream extractionprocess is reduced, and the efficiency of the bitstream extractionprocess is improved.

A bitstream generated by the bitstream generation method of theimplementation mode may be decoded by the decoding method ofimplementation mode 1.

FIG. 9 is an example diagram of a bitstream extraction implementationprocess according to an implementation mode. In FIG. 9, a picturecorresponding to a bitstream to be extracted is a picture with a widthof w0 and a height of h0, and two picture regions R0 and R1 form apicture (with a width of w1 and a height of h1) corresponding to a subbitstream. A left upper pixel of a first coding block (or decodingblock) in a first slice in the region R0 is S0, and a left upper pixelof a first coding block (or decoding block) in a first slice in theregion R1 is S1. A coordinate of S0 in the picture corresponding to thebitstream to be extracted is (px0, py0), and a coordinate value of S0may be obtained by the method for calculating (SliceAddrX, SliceAddrY)in implementation mode 1 according to a first parameter in the bitstreamto be extracted and a second parameter. It is to be noted that theimplementation mode is also applicable to the condition that the picturecorresponding to the sub bitstream includes only the region R0 or moreregions besides R0 and R1.

In the implementation mode, descriptions are made taking the conditionthat the first parameter is only contained in a PPS in the bitstream tobe extracted as an example. For the condition that the first parameteris contained in multiple parameter sets, a method for determining thefirst parameter is the same as the implementation mode, and a method forrecoding the first parameter in the sub bitstream is the same as themethod for coding the first parameter in multiple parameter sets inimplementation mode 3.

In operation 501, a picture region where a picture region correspondingto a sub bitstream is located in a picture corresponding to a bitstreamto be extracted is determined.

In the example shown in FIG. 9, the picture regions corresponding to thesub bitstream are R0 and R1, and the position coordinate of the sample(sample point) S0 in R0 in the bitstream to be extracted is (px0, py0).After extraction, a picture corresponding to the sub bitstream is apicture formed according to a manner that “R0 is on the left and R1 ison the right” in FIG. 9 and having the width of w1 and the height of h1.

For the condition of a motion-constrained slice group set using theH.264/AVC standard, in the bitstream extraction process, the pictureregion where the picture region corresponding to the sub bitstream islocated in the picture corresponding to the bitstream to be extractedmay be determined according to auxiliary information related to themotion-constrained slice group set in the bitstream and a viewingrequirement of a user. For example, for the example shown in FIG. 9, R0and R1 correspond to one or more motion-constrained slice group setsavailable for bitstream extraction respectively.

For the condition of temporal Motion-Constrained Tile Sets (MCTSs) usingthe H.265/HEVC standard, in the bitstream extraction process, thepicture region where the picture region corresponding to the subbitstream is located in the picture corresponding to the bitstream to beextracted may be determined according to auxiliary information relatedto an MCTS in the bitstream and the viewing requirement of the user. Forexample, for the example shown in FIG. 9, R0 and R1 correspond to one ormore MCTSs available for bitstream extraction respectively.

In operation 502, a starting position of a first slice in a picturecorresponding to the sub bitstream is determined, and a value of a firstparameter is calculated.

In the example shown in FIG. 9, the value of the first parameter of thesub bitstream is determined by the following method:

a value of pic_slice_address_info_x0 is set to be a value of px0;

a value of pic_slice_address_info_y0 is set to be a value of py0;

a value of pic_slice_address_info_stride_width is kept unchanged (namelyequal to a value of pic_slice_address_info_stride_width in the bitstreamto be extracted); and

a value of pic_slice_address_info_stride_height is kept unchanged(namely equal to a value of pic_slice_address_info_stride_height in thebitstream to be extracted).

In operation 503, the first parameter is written into a bitstreamcorresponding to a picture-layer data unit.

In the implementation mode, bitstream extraction is performed on thebitstream to be extracted by an existing method to obtain the subbitstream. In the bitstream extraction process, a syntax unitcorresponding to the first parameter in a PPS applied to the subbitstream is recoded.

The first parameter is written into the bitstream corresponding to thePPS of the sub bitstream by the method of operation 402 inimplementation mode 3.

In the process of performing bitstream extraction on the example shownin FIG. 8 by the method of the implementation mode, a slice bitstream inthe sub bitstream is directly from the bitstream to be extracted, andinformation in the slice bitstream is not required to be recoded in thebitstream extraction process. In addition, when the sub bitstreamobtained by extraction is re-extracted, it is only necessary to processthe sub bitstream as a “bitstream to be extracted” by the method of theimplementation mode, and only the first parameter in the PPS is requiredto be recoded in the extraction process. Regardless of an extractionmanner, both the bitstream to be extracted and the sub bitstream may bedecoded by the decoding method of implementation mode 1. It is apparentthat, through the method of implementation mode 5, the bitstreamextraction processing efficiency may be greatly improved.

Implementation Mode 5

In the implementation mode, bitstream extraction performed on an exampleshown in c0 by the method of implementation mode 4 is described.

FIG. 10 is a schematic diagram showing the application of the solutionof the embodiments in a 360-degree panoramic video. Herein, the360-degree panoramic video is a spherical video, and a viewer is in thecenter of sphere. In FIG. 10, a viewing region selected by the viewer isregions R1 and R0.

In the implementation mode, a bitstream to be extracted is generated byan existing 360-degree panoramic video coding method. According to thiscoding method, the spherical video is converted into an ordinarytwo-dimensional video, and then the two-dimensional video is coded by avideo coder. At a receiver, the two-dimensional video is decoded by avideo decoder, and is reconverted to the spherical video so that aterminal can provide the spherical video to a user.

During a practical application, the user views a certain region in the360-degree panoramic video. Therefore, for saving a transmissionbandwidth, the region viewed by the user may be determined according toa viewing angle of the user, a sub bitstream corresponding to the regionviewed by the user is extracted from the bitstream to be extracted, andthe sub bitstream is sent to the receiver. The receiver decodes the subbitstream, reconverts a picture obtained by decoding the sub bitstreamto a picture corresponding to the viewed region in the spherical videoaccording to auxiliary information (which may be auxiliary informationcontained in the video bitstream and may also be auxiliary informationcontained in a system layer) and provides the picture to the user.

In the example shown in FIG. 10, the 360-degree panoramic video, i.e.,the spherical video, is converted into an ordinary two-dimensionalpicture with a width of w0 and a height of h0 according to anEquirectangular Projection (ERP) manner. In the two-dimensional pictureobtained by conversion, the region R0 and the region R1 are at a leftpicture boundary and right picture boundary of the two-dimensionalpicture respectively. A left upper pixel of a first coding block (ordecoding block) in a first slice in the region R0 is S0, and a leftupper pixel of a first coding block (or decoding block) in a first slicein the region R1 is S1. A coordinate of S0 in the two-dimensionalpicture is (px0, py0), and a coordinate of S1 in the two-dimensionalpicture is (px1, py1). Coordinate value of S0 and S1 may be obtained bythe method for calculating (SliceAddrX, SliceAddrY) in implementationmode 1 according to a first parameter in the bitstream to be extractedand second parameters in the corresponding slices.

In the 360-degree panoramic video shown in FIG. 10, the region viewed bythe viewer is the region R1 and region R0 on the sphere. Therefore, thepicture corresponding to the sub bitstream is formed in the manner that“R0 is on the left and R1 is on the right”.

Implementation Mode 6

The embodiment is adopted to describe a method for extracting abitstream to generate a bitstream in the example shown in FIG. 10. Thefollowing operations are included.

In operation 601, a picture region where a picture region correspondingto a sub bitstream is located in a picture corresponding to a bitstreamto be extracted is determined.

In the example shown in FIG. 10, after extraction, a picturecorresponding to the sub bitstream is a picture formed in a manner that“R0 is on the left and R1 is on the right” and having a width of w1 anda height of h1.

In operation 602, a starting position of a first slice in a picturecorresponding to the sub bitstream is determined, and a value of a firstparameter is calculated.

In the example shown in FIG. 10, in an ERP with a width of w0 and theheight of h1, a starting position of the region R0 is equivalentlyrequired to be changed from S0 to Sx. In a 360-degree panoramic video,S0 and Sx correspond to the same sample (sample point) on the sphere.According to the method for calculating a starting position of a slicein operation 203 in implementation mode 1, a value of the firstparameter of the sub bitstream is required to be determined as follows:

a value of pic_slice_address_info_x0 is set to be a value of px1;

a value of pic_slice_address_info_y0 is set to be a value of py1;

a value of pic_slice_address_info_stride_width is kept unchanged (namelyequal to a value of pic_slice_address_info_stride_width in the bitstreamto be extracted); and

a value of pic_slice_address_info_stride_height is kept unchanged(namely equal to a value of pic_slice_address_info_stride_height in thebitstream to be extracted).

In operation 603, the first parameter is written into a bitstreamcorresponding to a picture-layer data unit.

In the implementation mode, bitstream extraction is performed on thebitstream to be extracted by an existing method to obtain the subbitstream. In the bitstream extraction process, a syntax unitcorresponding to the first parameter in a PPS applied to the subbitstream is recoded.

The first parameter is written into the bitstream corresponding to thePPS of the sub bitstream by the method of operation 402 inimplementation mode 3.

In the process of performing bitstream extraction on the example shownin FIG. 9 by the method of the implementation mode, a slice bitstream inthe sub bitstream is directly from the bitstream to be extracted, andinformation in the slice bitstream is not required to be recoded in thebitstream extraction process. In addition, when the sub bitstreamobtained by extraction is re-extracted, it is only necessary to processthe sub bitstream as a “bitstream to be extracted” by the method of theimplementation mode, and only the first parameter in the PPS is requiredto be recoded in the extraction process. Regardless of an extractionmanner, both the bitstream to be extracted and the sub bitstream may bedecoded by the decoding method of implementation mode 1. It is apparentthat, through the method of implementation mode 6, the bitstreamextraction processing efficiency may be greatly improved.

Implementation Mode 7

The implementation mode provides an implementation mode of an electronicsystem, which includes one or more undermentioned electronic devices,configured to process or generate a media bitstream or media fileincluding a video bitstream.

The electronic device decodes the video bitstream by the method ofimplementation mode 1 or performs bitstream extraction by the methods ofimplementation mode 4 and implementation mode 1.

The electronic device may perform sub bitstream extraction on the mediabitstream or media file using the H.265/HEVC standard by the method ofimplementation mode 2 or perform sub bitstream extraction by the methodsof implementation mode 4 and implementation mode 2.

The electronic device may perform sub bitstream extraction on the mediabitstream or media file using the H.264/AVC standard by the method ofimplementation mode 3, or perform sub bitstream extraction by themethods of implementation mode 4 and implementation mode 3.

The electronic device of the implementation mode may be a relatedapparatus for generating a bitstream and a receiving and playingapparatus in a video communication application, for example, a mobilephone, a computer, a server, a set-top box, a portable mobile terminal,a digital camera, a television broadcast system device, a contentdelivery network device and a media server.

Embodiment 4

The embodiment of the present disclosure also provides a storage medium,in which a computer program is stored, the computer program beingconfigured to execute, when running, the operations in anyabovementioned method embodiment.

In the embodiment, the storage medium may be configured to store acomputer program configured to execute the following operations.

In S1, a first parameter of a reference position of a slice in a pictureis acquired.

In S2, a second parameter of the slice is acquired, the second parameterbeing used for determining a starting position of the slice in the videopicture.

In S3, a starting position coordinate parameter of the slice in thevideo picture is calculated according to the first parameter and thesecond parameter.

In the embodiment, the storage medium may include, but not limited to,various medium capable of storing computer programs such as a U disk, aROM, a RAM, a mobile hard disk, a magnetic disk or an optical disk.

The embodiment of the present disclosure also provides an electronicdevice, which includes a memory and a processor. A computer program isstored in the memory. The processor is configured to run the computerprogram to execute the operations in any abovementioned methodembodiment.

In at least one exemplary embodiment, the electronic device may furtherinclude a transmission device and an input/output device. Thetransmission device is connected with the processor, and theinput/output device is connected with the processor.

In the embodiment, the processor in the embodiment may be configured toexecute the following operations through the computer program.

In S1, a first parameter of a reference position of a slice in a pictureis acquired.

In S2, a second parameter of the slice is acquired, the second parameterbeing used for determining a starting position of the slice in the videopicture.

In S3, a starting position coordinate parameter of the slice in thevideo picture is calculated according to the first parameter and thesecond parameter.

Optionally, examples in the embodiment may refer to the examplesdescribed in the abovementioned embodiments and optional implementationmodes and will not be elaborated in the embodiment.

It is apparent that those skilled in the art should know that eachmodule or each step of the present disclosure may be implemented througha universal computing device. They may be concentrated in a singlecomputing device or distributed in a network formed by multiplecomputing devices. In at least one exemplary embodiment, they may beimplemented by program codes executable for the computing devices andthus may be stored in a storage device for execution with the computingdevices. Moreover, in some cases, the shown or described operations maybe executed in sequences different from those described here, or mayform various integrated circuit modules respectively, or multiplemodules or operations therein may form a single integrated circuitmodule for implementation. Therefore, the present disclosure is notlimited to any specific hardware and software combination.

The above is only the exemplary embodiment of the present disclosure andnot intended to limit the present disclosure. For those skilled in theart, the present disclosure may have various modifications andvariations. Any modifications, equivalent replacements, improvements andthe like made within the principle of the present disclosure shall fallwithin the scope of protection of the present disclosure.

1. A method for decoding a video bitstream, comprising: acquiring afirst parameter of a reference position of a slice in a video picture;acquiring a second parameter of the slice, the second parameter beingused for determining a starting position of the slice in the videopicture; and calculating a starting position coordinate parameter of theslice in the video picture according to the first parameter and thesecond parameter.
 2. The method as claimed in claim 1, wherein acquiringthe first parameter of the reference position of the slice in the videopicture comprises: parsing one or more first bitstreams corresponding toa picture-layer data unit in the video bitstream; and acquiring thefirst parameter from the one or more first bitstreams.
 3. The method asclaimed in claim 2, wherein, based on there being multiple firstbitstreams, acquiring the first parameter from the multiple firstbitstreams comprises: parsing the multiple first bitstreams to obtainmultiple first parameters; acquiring at least one of identificationinformation related to the picture-layer data unit, and a referencerelationship between multiple picture-layer data units; and determiningone first parameter among the multiple first parameters according to theat least one of the identification information and the referencerelationship.
 4. The method as claimed in claim 3, wherein theidentification information related to the picture-layer data unit isused for indicating the first parameter used for calculating thestarting position coordinate parameter of the slice in the videopicture.
 5. The method as claimed in claim 3, wherein the picture-layerdata unit comprises at least one of: a Video Parameter Set (VPS), aSequence Parameter Set (SPS), a Picture Parameter Set (PPS), a sequenceheader, a picture header, a slice header, and a picture-layer auxiliaryinformation unit.
 6. The method as claimed in claim 1, wherein acquiringthe second parameter of the slice comprises: parsing slice-layer headerinformation of the video bitstream; and acquiring the second parameterfrom the slice-layer header information.
 7. The method as claimed inclaim 1, wherein the first parameter comprises coordinate information ofthe video picture and stride information of the video picture, and thesecond parameter comprises coordinate information of the slice.
 8. Themethod as claimed in claim 7, wherein calculating the starting positioncoordinate parameter of the slice in the video picture according to thefirst parameter and the second parameter comprises: calculating thestarting position coordinate parameter (SliceAddrX, SliceAddrY)according to:SliceAddrX=(slice_address_x−pic_slice_address_info_x0+pic_slice_address_info_stride_width)% pic_slice_address_info_stride_width; andSliceAddrY=(slice_address_y−pic_slice_address_info_y0+pic_slice_address_info_stride_height)% pic_slice_address_info_stride_height; wherein SliceAddrX is a startingposition coordinate of the slice in the video picture in a horizontaldirection, SliceAddrY is a starting position coordinate of the slice inthe video picture in a vertical direction, slice_address_x is a positioncoordinate of the slice in the horizontal direction, slice_address_y isa position coordinate of the slice in the vertical direction,pic_slice_address_info_x0 is a coordinate of the reference position ofthe slice in the video picture in the horizontal direction,pic_slice_address_info_y0 is a coordinate of the reference position ofthe slice in the video picture in the vertical direction,pic_slice_address_info_stride_width is a stride value of the videopicture in the horizontal direction, andpic_slice_address_info_stride_height is a stride value of the videopicture in the vertical direction.
 9. The method as claimed in claim 7,wherein calculating the starting position coordinate parameter of theslice in the video picture according to the first parameter and thesecond parameter comprises: calculating the starting position coordinateparameter (SliceAddrX, SliceAddrY) according to:SliceAddrX=(slice_address_x−pic_slice_address_info_x0+pic_slice_address_info_stride_width)% pic_slice_address_info_stride_width; andSliceAddrY=slice_address_y−pic_slice_address_info_y0; wherein SliceAddrXis a starting position coordinate of the slice in the video picture in ahorizontal direction, SliceAddrY is a starting position coordinate ofthe slice in the video picture in a vertical direction, slice_address_xis a position coordinate of the slice in the horizontal direction,slice_address_y is a position coordinate of the slice in the verticaldirection, pic_slice_address_info_x0 is a coordinate of the referenceposition of the slice in the video picture in the horizontal direction,pic_slice_address_info_y0 is a coordinate of the reference position ofthe slice in the video picture in the vertical direction, andpic_slice_address_info_stride_width is a stride value of the videopicture in the horizontal direction.
 10. A method for generating a videobitstream, comprising: setting a first parameter according to a startingposition of a first slice in a video picture; and writing the firstparameter into a bitstream of a picture-layer data unit of the videopicture.
 11. The method as claimed in claim 10, further comprising,based on writing the first parameter into the bitstream of thepicture-layer data unit of the video picture: calculating a secondparameter according to a starting position coordinate parameter of aslice in the video picture and the first parameter, and writing thesecond parameter into a bitstream corresponding to slice-layer headerinformation, the second parameter being used for determining a startingposition of the slice in the video picture.
 12. The method as claimed inclaim 10, wherein setting the first parameter according to the startingposition of the first slice in the video picture comprises: determininga picture region where a picture corresponding to a sub bitstream islocated in a picture corresponding to a bitstream to be extracted, thepicture corresponding to the sub bitstream being the video picture; anddetermining the starting position of the first slice in the videopicture, and calculating the first parameter according to the startingposition, the starting position of the first slice being a startingposition coordinate of the first slice in the video picture in thepicture corresponding to the bitstream to be extracted.
 13. An apparatusfor decoding a video bitstream, comprising: a first acquisition module,configured to acquire a first parameter of a reference position of aslice in a video picture; a second acquisition module, configured toacquire a second parameter of the slice, the second parameter being usedfor determining a starting position of the slice in the video picture;and a calculation module, configured to calculate a starting positioncoordinate parameter of the slice in the video picture according to thefirst parameter and the second parameter.
 14. An apparatus forgenerating a video bitstream, comprising: a setting module, configuredto set a first parameter according to a starting position of a firstslice in a video picture; and a generation module, configured to writethe first parameter into a bitstream of a picture-layer data unit of thevideo picture.
 15. A storage medium, in which a computer program isstored, the computer program being configured to execute, when running,the methods as claimed in claim
 1. 16. An electronic device, comprisinga memory and a processor, wherein a computer program is stored in thememory; and the processor is configured to run the computer program toexecute the method as claimed in claim
 1. 17. The apparatus as claimedin claim 14, wherein the apparatus is further configured to, after thegeneration module writes the first parameter into the bitstream of thepicture-layer data unit of the video picture, calculate a secondparameter according to a starting position coordinate parameter of aslice in the video picture and the first parameter, and write the secondparameter into a bitstream corresponding to slice-layer headerinformation, the second parameter being used for determining a startingposition of the slice in the video picture.
 18. A storage medium, inwhich a computer program is stored, the computer program beingconfigured to execute, when running, the methods as claimed in claim 10.19. An electronic device, comprising a memory and a processor, wherein acomputer program is stored in the memory; and the processor isconfigured to run the computer program to execute the method as claimedin claim
 10. 20. An electronic device, comprising a memory and aprocessor, wherein a computer program is stored in the memory; and theprocessor is configured to run the computer program to execute themethod as claimed in claim 11.